package cn.tedu.common.pojo.vo;

import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;

import java.math.BigDecimal;

/**
 * 充电进度值对象（用于封装返回给客户端的充电过程数据）
 * 理解怎么梳理出参
 * 页面要显示什么? 客户(页面,接口调用者)更关心什么数据,接口出参就返回什么数据
 */
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
public class ChargingProcessVO {

    /**
     * 订单号 订单信息
     */
    String orderNo;
    /**
     * 用户id 用户信息
     */
    Integer userId;

    /**
     * 总金额 订单信息
     */
    BigDecimal totalCost;
    /**
     * 总度数 订单信息
     */
    Float chargingCapacity;

    /**
     * 每度电单价
     * 直接取计价规则的价格有可能不准确
     *
     * 总价格 除以 度数  = 计算一个单价
     *
     * 详情
     * 每个时间段 充了多少时间,花了多少钱,单价 度数
     * 整个充电完成后,跨越了多个时间段,有可能时间段的单价不同
     */
    BigDecimal powerFee;
    /**
     * 充电时长 订单信息
     * 返回什么格式 尽量返回通用的格式,具体的转换交个前端
     * xx小时--xx分钟--xx秒
     * xx.xx.xx
     */
    String totalTime;

    /**
     * 枪id 设备信息
     */
    Integer gunId;

}